In order to improve the performance of direct access data storage systems utilizing slower access storage devices such as disk drives, such systems are provided with intermediary temporary memory storage commonly known as cache memory.
In operation, a host computer sends a disk store or write command to the storage system accompanied by the data to be stored. In order to improve performance, the storage system accepts the write command and associated data and temporarily stores the information in cache memory. The storage system then acknowledges a successful "write" of the data to the host. Thus, the host believes that the data is now permanently written to disk storage. At a later time when the disk storage system is not receiving requests for reading or writing data to any of the storage disks, the storage system will process all the data stored in its cache memory which the system can identify as requiring writing to the disk drive. In this manner, a host accessing a data storage system with a write command is not kept waiting or does not tie up the storage system while the storage system and disk drive controllers search for the data to be updated, or search for the location on the disk drive to which the data is to be written.
A problem with serious consequences arises, however, when a power failure occurs after the host computer has written the data to the storage system and prior to the storage system transferring the data from cache memory to the selected disk drive.
Prior art attempts at solving this problem have focused on providing battery backup for the volatile cache memory which is generally comprised of Dynamic Random Access Memory (DRAM). For example, one such system provides battery backup for the cache memory for a period of approximately 48 hours. However, should a power failure occur over a weekend or holiday, the battery backup system often does not supply enough power to maintain the data in the cache memory until the power failure can be identified and remedied. Additionally, if the battery backup is not fully charged or discharges more quickly than anticipated, the battery backup system may not provide adequate power to the cache memory for the full intended period. In either case, the data which the host thought was permanently written to disk storage may be irretrievably lost.